1. Field of the Invention
The present invention relates to data access, and more particularly, to a method of writing data into and reading data out of a memory space in a deinterleaving unit.
2. Description of the Prior Art
Interleavers and deinterleavers are effective to increase the transmission quality of electronic devices. The socalled interleaver utilizes a “write by column”/“read by line” structure. The main idea is to break the data to be transmitted into different packets, and then send the packets to a connected electronic unit. In contrast, a deinterleaver performs the opposite function of the interleaver. Namely, the deinterleaver utilizes a “write by line”/“read by column” structure. The main idea is to recombine the data broken into different packets by the interleaver to thereby reform the original state of the data.
In terms of the electronic circuit design, the interleaver takes the original representation bit order of an index value, and directly views it as each storage unit's memory address of a memory for processing. Because of this, a memory and a memory address generator can be utilized to implement an interleaver. The circuit design for a deinterleaver is very similar to that of an interleaver. The difference only involves reversing the algorithm execution order. In this way, it is apparent that an interleaver and a deinterleaver have a difference being the memory reading and writing modes are reversed. In other words, an interleaver vertically writes data into memory and horizontally reads data from the memory, and a deinterleaver performs the opposite modes. That is, a deinterleaver horizontally writes data into the memory and vertically reads data from the memory.
There are two types of typical deinterleaver operation methods. The first method involves using double memories that rotate performing writing and reading operations. However, this method utilizes a lot of memory and therefore is not suitable for cost sensitive designs. The second method involves providing an extra memory to store all addresses of all reading operations and to perform reading and writing. However, this method not only requires an extra memory, but also requires very intensive calculations.
Although the above described interleaver and deinterleaver encoding methods are effective to increase the transmission quality of a digital product transmitting data, in consideration of ever increasing transmission speeds, the above described techniques require considerable consideration to implement. Additionally, when implementing the “write by line”/“read by column” operations of a traditional interleaver, a great amount of calculations are required to be performed. For this reason, how to design a data accessing method for a deinterleaver that can solve the above—mentioned problems continues to be a very important industry topic.